package com.wofish.member.domain;


import com.wofish.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 会员等级表 wf_b2c_member_lv
 * 
 * @author wofish
 * @date 2019-04-21
 */
public class MemberLvVo {

	private static final long serialVersionUID = 1L;
	
	/** ID */
	@Excel(name = "ID")
	private Long memberLvId;

	/** 等级名称 */
	@Excel(name = "等级名称")
	private String name;

	/** 会员等级LOGO */
	@Excel(name = "等级logo")
	private String logo;

	/** 会员折扣率 */
	@Excel(name = "折扣率")
	private BigDecimal disCount;

	/** 前一级别ID，等级过期时自动降到前一级别 */
	private Long preId;

	/** 前一级别名称 */
	@Excel(name = "前一级别名称")
	private String preName;

	/** 是否默认，默认等级不会自动降级 */
	@Excel(name = "是否默认", readConverterExp = "1=是,0=否")
	private Integer defaultLv;

	/** 通过积分进行升级时，所需积分 */
	@Excel(name = "升级所需积分")
	private Integer point;

	/** 会员等级备注 */
	private String remark;

	/** 等级过期时间 */
	@Excel(name = "过期时间")
	private Integer expireTime;

	/** 等级过期时间单位,1-小时，2-天，3-月，4-年 */
	@Excel(name = "过期时间单位", readConverterExp = "1=小时,2=天,3=月,4=年")
	private Integer expireTimeUnit;

	/** 创建时间 */
	@Excel(name = "创建时间", dateFormat="yyyy-MM-dd HH:mm:ss")
	private Date createTime;
	/** 更新时间 */
	private Date updateTime;

	/** 生效标记，0-生效，1-不生效 */
	@Excel(name = "状态", readConverterExp = "0=生效,1=不生效")
	private Integer disabled;

	public String getPreName() {
		return preName;
	}

	public void setPreName(String preName) {
		this.preName = preName;
	}

	public void setMemberLvId(Long memberLvId) {
		this.memberLvId = memberLvId;
	}

	public Long getMemberLvId() {
		return memberLvId;
	}
	public void setName(String name) {
		this.name = name;
	}

	public String getName() {
		return name;
	}
	public void setLogo(String logo) {
		this.logo = logo;
	}

	public String getLogo() {
		return logo;
	}
	public void setDisCount(BigDecimal disCount) {
		this.disCount = disCount;
	}

	public BigDecimal getDisCount() {
		return disCount;
	}
	public void setPreId(Long preId) {
		this.preId = preId;
	}

	public Long getPreId() {
		return preId;
	}
	public void setDefaultLv(Integer defaultLv) {
		this.defaultLv = defaultLv;
	}

	public Integer getDefaultLv() {
		return defaultLv;
	}
	public void setPoint(Integer point) {
		this.point = point;
	}

	public Integer getPoint() {
		return point;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getRemark() {
		return remark;
	}
	public void setExpireTime(Integer expireTime) {
		this.expireTime = expireTime;
	}

	public Integer getExpireTime() {
		return expireTime;
	}
	public void setExpireTimeUnit(Integer expireTimeUnit) {
		this.expireTimeUnit = expireTimeUnit;
	}

	public Integer getExpireTimeUnit() {
		return expireTimeUnit;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getCreateTime() {
		return createTime;
	}
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}
	public void setDisabled(Integer disabled) {
		this.disabled = disabled;
	}

	public Integer getDisabled() {
		return disabled;
	}

    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("memberLvId", getMemberLvId())
            .append("name", getName())
            .append("logo", getLogo())
            .append("disCount", getDisCount())
            .append("preId", getPreId())
            .append("preName", getPreName())
            .append("defaultLv", getDefaultLv())
            .append("point", getPoint())
            .append("remark", getRemark())
            .append("expireTime", getExpireTime())
            .append("expireTimeUnit", getExpireTimeUnit())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("disabled", getDisabled())
            .toString();
    }
}
